"""
setup：用例执行前，先执行它
teardown：用例执行结束后，再执行它
"""

"""
Desc: 模块级别
"""
"""
def setup_module():
    print("这是模块级的setup方法")

def teardown_module():
    print("这是模块级的teardown方法")
    
def test_demo1():
    print("这是demo1")

def test_demo2():
    print("这是demo2")

def test_班长():
    print("这是班长")
"""
"""
这是模块级的setup方法
这是demo1
这是demo2
这是班长
这是模块级的teardown方法
"""

"""
Desc:函数级别
"""
"""
def setup_function():
    print("这是函数级的setup方法")

def teardown_function():
    print("这是函数级的teardown方法")
    print("\n")
    
def test_b1():
    print("我是班长1")

def test_b2():
    print("我是班长2")

def test_b3():
    print("我是刘超")
"""
"""
这是函数级的setup方法
我是班长1
这是函数级的teardown方法

这是函数级的setup方法
我是班长2
这是函数级的teardown方法

这是函数级的setup方法
我是刘超
这是函数级的teardown方法
"""

"""
Desc: 类级别
"""
"""
class TestDemo:
    # 类级别的方法
    def setup_class(self):
        print("这是类级别的setup方法")

    def teardown_class(self):
        print("类级别的teardown方法")

    def test_demo1(self):
        print("这是demo1")

    def test_demo2(self):
        print("这是demo2")

    def test_demo3(self):
        print("这是demo3")
"""
"""
这是类级别的setup方法
这是demo1
这是demo2
这是demo3
类级别的teardown方法
"""

"""
Desc：方法级别
"""
"""
class TestDemo:
    def setup_method(self):
        print("这是方法级别的setup方法")

    def teardown_method(self):
        print("这是方法级别的teardown方法")

    def test_b1(self):
        print("我是刘超")

    def test_b2(self):
        print("我是刘超2代")

    def test_b3(self):
        print("我是班长也是刘超3号")
"""
"""
这是方法级别的setup方法
我是刘超
这是方法级别的teardown方法

这是方法级别的setup方法
我是刘超2代
这是方法级别的teardown方法

这是方法级别的setup方法
我是班长也是刘超3号
这是方法级别的teardown方法
"""

# 套用selenium+pytest
from selenium import webdriver
from selenium.webdriver.common.by import By
from time import sleep
class TestBaidu:
    def setup_method(self):
        self.driver = webdriver.Chrome()
        self.driver.get('https://www.baidu.com/')
        self.driver.implicitly_wait(15)
        self.driver.maximize_window()
    def teardown_method(self):
        sleep(2)
        self.driver.quit()      # 退出浏览器
    def testSearch(self):
        self.driver.find_element(By.NAME,'wd').send_keys("我是刘超")
        # assert
        # pytest.assume()


# if __name__ == '__main__':
#     t1 = TestBaidu()        # 这样子是不对的











